/**

This file is part of MaCI/GIMnet.

MaCI/GIMnet is free software: you can redistribute it and/or modify it 
under the terms of the GNU Lesser General Public License as published 
by the Free Software Foundation, either version 3 of the License, or 
(at your option) any later version.

MaCI/GIMnet is distributed in the hope that it will be useful, but WITHOUT 
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public 
License for more details.

You should have received a copy of the GNU Lesser General Public 
License along with GIMnet. (See COPYING.LESSER) If not, see 
<http://www.gnu.org/licenses/>.

**/
#ifndef glutHeightMapDisplay_h_
#define glutHeightMapDisplay_h_

#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>
#include "CGLHeightMap.h"

class CVector3{
		public:
		float x;
		float y;
		float z;
		CVector3(){
				x=0;y=0;z=0;
		}
		~CVector3(){}
		
};
void  glut_hm_initialize(int argc,char *argv[],CGLHeightMap *hmPtr);
/// Initialize the drawing with this
void setMaterialParameters();

///////////////////////////////////////////////////////////////
///// CALLBACKFUNCTION DECLARATIONS
//////////////////////////////////////////////////////////////
void renderScene(void);
void glutMouse(int button, int state, int x, int y);
CVector3 GetOGLPos(int x, int y);

void glutIdleFunc(void); ///<Glut idle
void changeSize(int w, int h); ///<Resize
void pressKey(int key, int xx, int yy);///<Special Key
void releaseKey(int key, int xx, int yy); ///< Special KeyUp
void KeyUp(unsigned char key,int x, int y); ///< Key up func
void Key(unsigned char key,int x, int y); ///< KeyFunc

#endif



